﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Imagiality.MeshProcessing.Test
{
    public class SceneQueryStub<T> : SceneQuery<T> where T:SceneObject
    {
        public SceneQueryStub() : base()
        {
        }

        public SceneQueryStub(SceneQuery<T> innerQuery)
            : base(innerQuery)
        {
        }

        public SceneQueryStub(SceneQuery<T> innerQuery, int depthLimit)
            : base(innerQuery, depthLimit)
        {
        }

        public SceneQueryStub(int depthLimit)
            : base(depthLimit)
        {
        }

        protected override bool IsMatch(SceneObject obj)
        {
            MatchableSceneObjectStub matchable = (MatchableSceneObjectStub)obj;

            return (matchable.WillItMatch());
        }

        protected override bool ProcessNextLevel(int level, SceneObject parent)
        {
            return true;
        }
    }
}
